#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QPaintEvent>
#include <QImage>
#include <QPoint>
#include <QSize>

#include "graphicinfo.h"
#include "Bezier.h"

namespace Ui {
    class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

    virtual void paintEvent(QPaintEvent *);

private:
    Ui::MainWindow *ui;
    QImage* palette, *bg;
    GraphicInfo m_GI;
    int state;
    void Reset();

public slots:

    void Line();
    void Ellipse();
    void Poly6();
    void Poly3();
    void BezierLine();
    void BspLine();

    void Trans();
    void Rotate();
    void Scale();

    void Fill();
    void Clip();
};

#endif // MAINWINDOW_H
